package builder;

import absfactory.MazeFactory;
import model.base.Maze;

/**
 * Builder
 */
public abstract class MazeBuilder {
	protected MazeFactory factory;
	protected Maze        currentMaze;

	protected MazeBuilder(MazeFactory factory) {
		this.factory = factory;
	}

	public abstract void Buildmaze();

	public abstract void BuildRoom(int number);

	public abstract void BuildDoor(int roomFrom, int roomTo);

	public abstract Maze GetMaze();

	public abstract MazeFactory getMazeFactory();
}
